using System;

namespace Zadanie53 // Zadanie 5.3
{
    class Matrix
    {
        public void czytaj_dane(double[, ] macierz, int rozmiar)
        {
            int i, j;

            Random rand = new Random(); // generowanie liczby pseudolosowej

            for (i = 0; i < rozmiar; i++)
            {
                for (j = 0; j < rozmiar; j++)
                {
                    if (i == j)
                        macierz[i, j] = Math.Round(9 * (rand.NextDouble()));
                        // wpisywanie liczb pseudolosowych od 0 do 9 na przektnej tablicy
                    else
                        macierz[i, j] = 0;
                        // wpisywanie 0 poza przektn
                }
            }
        }

        public void przetworz_dane(double[, ] macierz, int rozmiar)
        {
            int i; double 
            suma = 0;

            for (i = 0; i < rozmiar; i++)
                suma = suma + macierz[i, i];

            Console.WriteLine("Suma elementw na przektnej wynosi = " + suma + ".");
            Console.WriteLine();
        }

        public void wyswietl_wynik(double[, ] macierz, int rozmiar)
        {
            int i, j;

            for (i = 0; i < rozmiar; i++)
            {
                for (j = 0; j < rozmiar; j++)
                {
                    Console.Write(macierz[i, j] + " "); 
                }
                Console.WriteLine();
            }
        }

        static void Main(string[] args)
        {
            int rozmiar = 10;        
            double [, ] tablica = new double [rozmiar, rozmiar];

            Matrix matrix1 = new Matrix();

            matrix1.czytaj_dane(tablica, rozmiar); 
            matrix1.przetworz_dane(tablica, rozmiar); 
            matrix1.wyswietl_wynik(tablica, rozmiar);

            Console.Read(); // nacinij klawisz Enter
        }
    }
}